#ifndef INTERFACE_H
#define INTERFACE_H

#include <QObject>
#include <QString>

class Interface: public QObject
{
    Q_OBJECT
public:
    virtual ~Interface(){}
    virtual void  UsFunction() = 0;   //纯虚函数
    virtual void  Init() = 0;         //纯虚函数初始化

public slots:
    virtual void  UsPublicSlot() = 0;   //纯虚函数

private slots:
    virtual void  UsPrivateSlot() = 0;   //纯虚函数

signals:
    void UsSigVoid();                //这里信号本身是没有实现方法的所以不需要虚函数
    void UsSigSend(QString);      //信号可以用来发送任何东西，除了QString也可以QObject下的任意子类指针
};

Q_DECLARE_INTERFACE(Interface,"FunNing.Plugin.Interface");//注册当前类为接口 参数1注册类 参数2插件身份
//Q_DECLARE_INTERFACE 来自QObject的宏 相关信息你可以查看Qt官网每一个接口的身份标识不能一致

#endif // INTERFACE_H
